<?php

class construccionActions extends sfActions{
    
    public function preExecute(){
        //$this->redirect('@inicio#planes');
    }

    public function executePasoUno(sfWebRequest $request){
        //$this->redirect('@construccionPasoDos');
        $this->setTemplate('pasoUno');
        return sfView::SUCCESS;
    }
    
    public function executePasoDos(sfWebRequest $request){
        $tipoSitioWeb = $request->getParameter('tipoSitioWeb');
        //grabar datos del sitio web en sesión
        $datosSitioWeb = array(
            "tipoSitioWeb" => $tipoSitioWeb
        );
        $this->getUser()->setAttribute('datosSitioWeb', $datosSitioWeb);
        $this->setTemplate('pasoDos');
        return sfView::SUCCESS;
    }
    
    public function executePasoDosGrabar(sfWebRequest $request){
        $sessionDatosSitioWeb = $this->getUser()->getAttribute('datosSitioWeb');
        $hdIdPlantilla = $request->getParameter('hdIdPlantilla');
        //grabar datos del sitio web en sesión
        $datosSitioWeb = array(
            "tipoSitioWeb" => $sessionDatosSitioWeb["tipoSitioWeb"],
            "idPlantilla" => $hdIdPlantilla
        );
        $this->getUser()->setAttribute('datosSitioWeb', $datosSitioWeb);
        $this->redirect('@construccionPasoTres');
    }
    
    public function executePasoTres(sfWebRequest $request){
        $datosSitioWeb = $this->getUser()->getAttribute('datosSitioWeb');
        $tipoSitioWeb = $datosSitioWeb["tipoSitioWeb"];
        $template = "";
        
        switch($tipoSitioWeb){
            case "personal":
                $template = "pasoTresPersonal";
                break;
            case "empresarial":
                $template = "pasoTresEmpresarial";
                break;
        }
        
        $this->setTemplate($template);
        return sfView::SUCCESS;
    }
    
    public function executePasoTresGrabar(sfWebRequest $request){
        if(!$this->getUser()->isAuthenticated()){
            //actualiza datos del sitio web en sesión
            $datosSitioWeb = $this->getUser()->getAttribute('datosSitioWeb');
            $datosSitioWeb["nombreDominio"] = $request->getParameter('nombreDominio', 'www.misitio.com');
            $this->getUser()->setAttribute('datosSitioWeb', $datosSitioWeb);
            
            //redireccionar a registro de usuarios
            $this->getUser()->setFlash('mensaje', 'Para continuar debes autenticarte. Iniciar sesión o crea una cuenta nueva.');
            $this->redirect('@autenticacion');
        }else{
            $this->redirect('@construccionPasoCuatro');
        }
    }
    
    public function executePasoCuatro(sfWebRequest $request){
        //graba los datos en la bd
        if($this->getUser()->hasAttribute('datosSitioWeb')){
            //grabar en bd asociado al usuario
            $this->getUser()->getAttributeHolder()->remove('datosSitioWeb');
        }
        $this->setTemplate('pasoCuatro');
        return sfView::SUCCESS;
    }
    
}